import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';

import { NzModalModule } from 'ng-zorro-antd/modal';
import { NzTableModule } from 'ng-zorro-antd/table';

import { TableComponent } from './components/table/table.component';
import { HttpClientService } from './services/httpClient/http';
import { TableService } from './components/table/service/table.service';
import { IconsProviderModule } from './icons-provider.module';
import { NgZorroAntdModule } from './ng-zorro-antd.module';
import { CosUploadComponent } from './components/cos-upload/cos-upload.component';
import { CoolSessionStorage } from './services/coolStorage/cool-session-storage';
import { CoolLocalStorage } from './services/coolStorage/cool-local-storage';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { httpInterceptorProviders } from './services/httpClient/interceptor-config';
import { ReporttempltComponent } from './components/reporttemplt/reporttemplt.component';
import { ReporttempltService } from './components/reporttemplt/services/reporttemplt.service';

@NgModule({
  imports: [
    NzModalModule,
    CommonModule,
    NzTableModule,
    IconsProviderModule,
    NgZorroAntdModule,
    ReactiveFormsModule,
    FormsModule,
  ],
  declarations: [
    TableComponent,
    CosUploadComponent,
    ReporttempltComponent
  ],
  exports: [
    TableComponent,
    CosUploadComponent,
    IconsProviderModule,
    IconsProviderModule,
    NgZorroAntdModule,
    CommonModule,
    ReactiveFormsModule,
    FormsModule,
    ReporttempltComponent

  ],
  providers: [
    HttpClientService,
    CoolSessionStorage,
    httpInterceptorProviders,
    ReporttempltService,
    CoolLocalStorage,
    TableService
  ]
})
export class Common_Module { }
